"""
字符串的使用 和 常用方法
"""
#1.字符串的 乘法 将字符串复制多次
s1 = 'hello ' * 3
print(s1)
#2.字符串的拼接 加法
s2 = 'world'
s1 += s2
print(s1)
#3.判断一个字符串是否包含另外一个字符串
print("ll" in s1)# s1中的字符串是否包含 ll
print('good' not in s1)#s1中的字符串是否不包含 good

#4.切片  指定索引值进行截取  索引值是从0开始的
str2='abc123456'
print(str2[2])# 结果：c
print(str2[2:5])#结果 c12  左闭右开的区间  不包含结束的索引值
print(str2[2:])#结果 c123456  如果结束的索引值，就是是末尾的索引值+1
print(str2[2::2])#结果c246          步长：每次移动2位
print(str2[::2])#结果 ac246  起始索引不写，默认从0开始
print(str2[::-1])# 654321cba 字符串的反转
print(str2[-3:-1])#结果 45

#5.常用方法
str3 = "hello world"
#通过len函数 获得字符串的长度
print("该字符串的长度为:",len(str3))
#获得字符串首字母大写
print(str3.capitalize())# 转换后是一个新字符串，并没有改变原字符串
#获得字符串每个单词首字母的大写
print(str3.title())
#获得字符串全部字母大写
print(str3.upper())
#从字符串中查找子串的位置  find  index
print(str3.find("or"))# 返回or所在当前字符串的索引值   7
print(str3.find('shit'))# 有结果 -1 表示不在当前字符串中
#print(str3.index("or"))# 返回or所在当前字符串的索引值   7
#print(str3.index('shit'))# 子字符串不在当前字符串中会报错
#检查字符串是否以指定的字符串开头
print(str3.startswith('He'))#False
print(str3.startswith('he'))#True
#检查字符串是否以指定的字符串结尾
print(str3.endswith('He'))#False
print(str3.endswith('ld'))#True
#将字符串长度设为50，且该字符串居中，空白位置以*进行补位
print(str3.center(50,'*'))
#将字符串长度设为50，且该字符串居右，空白位置以*进行补位
print(str3.rjust(50,'*'))
#str2='abc123456'
#判断字符串是否由数字构成
print(str2.isdigit())# False
#判断字符串是否由字母构成
print(str2.isalpha())#False
#判断字符串是否由字母和数字构成
print(str2.isalnum())#True
str4="  aab   bcc   "
#去除字符串左右两边的空格
print(str4.strip(),str4.replace(" ",""))# replace 字符串的替换， 用没有空格的字符串替换 带有空字符串